﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ExcelFileQueryTool
{
    public class ClientData
    {
        /// <summary>
        /// 姓名
        /// </summary>
        public string Name { get; set; }

        /// <summary>
        /// 客户分类
        /// </summary>
        public string ClientType { get; set; }

        /// <summary>
        /// 电话号码
        /// </summary>
        public string Phone { get; set; }

        /// <summary>
        /// 地址
        /// </summary>
        public string Address { get; set; }

        /// <summary>
        /// 联系人
        /// </summary>
        public string ContactPerson { get; set; }

        /// <summary>
        /// 未结材料款
        /// </summary>
        public decimal UnpaidAmount { get; set; }

        /// <summary>
        /// 最近交易时间
        /// </summary>
        public DateTime? LastTradeDate { get; set; }

        /// <summary>
        /// 备注
        /// </summary>
        public string Note { get; set; }

        /// <summary>
        /// 交易分部数据(例如不同工地一个part)
        /// </summary>
        public IList<ClientTradePartData> TradeParts { get; set; }

        public bool IsPaymentClear
        {
            get
            {
                // 其它小额的数据也出数，这样就提供了机会让用户手动修正无需出数的记录
                // 同时因为有些历史遗留问题，少数对数表因浮点存储问题，实际为0的数据会有轻微偏差，所以界定在[-1,1]的数据就忽略
                return UnpaidAmount > -1 && UnpaidAmount < 1;
            }
        }
    }
}
